Масштабирование¶
Внимание
Раздел находится в разработке.
Репликация¶
Поддерживается стандартные функции синхронной/асинхронной репликации Tarantool.
Шардирование¶
TCS поддерживает горизонтальное масштабирование посредством механизма шардирования, что предполагает разбиение набора данных на части и распределение их по нескольким наборам реплик (шардам). Данные распределяются по шардам по ключу шардирования, который указывается для каждой шардированной таблицы.
Работа с шардированными данными поддерживается для запросов на URL-адреса /sql,
/compute, /insert и /update. Для запросов на чтение в режиме шардирования
предусмотрены специальные оптимизации.
Примечание
Ограничения текущей версии TCS:
Запросы на URL-адреса, для которых работа с шардированными данными не поддерживается (
/cancel,/ddl,/streaming/sql,/version), могут не работать или работать неправильно, когда включен режим шардирования (параметрsharding_apiв конфигурации экземпляров Scheduler).При переходе на шардированную конфигурацию требуется полная перезаливка данных.
Между экземплярами Scheduler нет взаимодействия. Например, если в кластере запущено несколько экземпляров Scheduler, и в один из них приходит запрос на изменение аналитического расчета (prepared statement), другой экземпляр Scheduler об этом не узнает и будет использовать старый текст расчета. Аналогично с удалением аналитических расчетов: один экземпляр Scheduler не знает, что другой экземпляр мог удалить данный расчет.
Режим шардирования (параметр
sharding_api) не рекомендуется включать, если в конфигурации кластера не заданы хотя бы 2 шарда.Если в конфигурации TCS задан 1 шард, режим шардирования включать можно, но только если вставка будет происходить через экземпляр Scheduler с использованием его ADBC/JDBC интерфейса.
Распределение данных между шардами осуществляется на основе актуальной конфигурации кластера. Любые изменения в конфигурации наборов реплик после начальной загрузки данных могут вызвать нарушения в работе механизма шардирования. К критическим изменениям относятся:
Переименование существующих наборов реплик;
Удаление наборов реплик;
Добавление новых наборов реплик.
В случае проведения подобных операций после изменения конфигурации необходима полная перезаливка данных для обеспечения корректной работы системы шардирования.